\fs24 Q. I have a NeXT on a local non-NetInfo Network. The one machine on my local network that is connected to the Internet is not a NeXT. How can I set up my NeXT so I can send and receive mail?\
\
A.
\i A prefatory note
\i0 : if you are not your site's network administrator charged with supporting sendmail, check with him or her before embarking on this. It may be necessary to use a locally-modified sendmail configuration file (
\f1 sendmail.cf
\f0 ).\
\
\b Assumptions
\b0 :\
\
• You are running NetInfo, on a non-NetInfo network. Make sure you have not shut NetInfo off; you can check this by doing the following in a Shell or Terminal window:\
\
\f1 myhost#
\b nidomain -l
\b0 \
tag=local udp=667 tcp=669\
\f0 \
\
The critical thing in the output from nidomain(8) is the
\f1 tag=local
\f0 part. A line with this indicates that the local machine is serving the local NetInfo database; this indicates NetInfo is running correctly. (The values for the
\f1 udp
\f0 and
\f1 tcp
\f0 fields are irrelevant here.)\
• You are logged in as root.\
\
• The machine that is on the Internet will be your “mailhost” (your interface to the outside world). For the purposes of this document, we call this machine
\b mailcarrier
\b0 .\
\
1. Launch /NextAdmin/NetinfoManager (this is the application with the T connector and question mark in the icon).\
\
2. Verify that
\b mailcarrier
\b0 is in the /machines directory of your local NetInfo domain. Click once on the /machines directory. If there is not an entry for
\b mailcarrier
\b0 , then you must create one by doing the following:\
\
• Click once on localhost in the
\b machines
\b0 directory.\
\
• Choose the Duplicate command from the Directory menu selection; a directory named
\b Copy_of_localhost
\b0 then appears
\b
\b0 in the machines column.\
\
• Double-click on
\b Copy_of_localhost
\b0 to bring up the Property Editor panel. Notice that the panel has two columns labeled “Properties” and “Values.”\
• Rename
\b Copy_of_localhost
\b0 to
\b mailcarrier
\b0 in the field beneath the Values column; then press the Action button in the Values column and drag to the Rename option.\
\
• Click on the
\b ip_address
\b0 property. Rename
\b 127.0.0.1
\b0 to the IP address of mailcarrier in the field beneath the Values column, then press the Action button in the Values column and drag to the Rename option. \
\
• Click on the
\b serves
\b0
\b
\b0 property. Delete this property by pressing the Action button in the Properties column and drag to the Delete option.\
\
• Click on the
\b OK
\b0 button.\
3. Once
\b mailcarrier
\b0 is in the machines directory, you need to add
\b mailhost
\b0 as one of the values of the Property name. Double click on
\b mailcarrier
\b0 to bring up the Property Editor panel. In the Properties column click on
\b name.
\b0 In the Values column, change mailcarrier to mailhost; press the Action button and drag to the Append option. Click on the OK button.\
\
4. Check the
\b localhost
\b0 entry in the machines directory to see if the property name has
\b mailhost
\b0 as one of its values. If it does, delete the value
\b mailhost
\b0 from the name property of l
\b ocalhost
\b0 . (This step is included for those who used niload to upload an /etc/hosts database from a central administrative machine — like
\b mailcarrier
\b0 !)\
\
5. Start up a Shell Window (/NextApps/Shell).\
\
6. Change directories to the sendmail directory:\
\
\f1 myhost# cd /etc/sendmail\
\f0 \
7. There are three different sendmail configuration files in
\f1 /etc/sendmail
\f0 . They are:\
\f1 sendmail.subsidiary.cf
\f0 is the default configuration file. Local mail is delivered locally, mail to machines in the local domain is delivered directly to those machines, and mail to machines in any other domains is forwarded to “mailhost.”\
\
\f1 sendmail.sharedsubsidiary.cf
\f0 is used if you mount the directory
\f1 /usr/spool/mail
\f0 from “mailhost.” It delivers mail to machines in the local domain directly to those machines. All other mail (local mail and non-local domains) goes to “mailhost.”\
\
sendmail.mailhost.cf is used on the machine that is the mailhost. It tries to deliver all mail directly to its location. You can edit this file to specify an even smarter mail relay to handle the addresses the mailhost doesn't understand.
\fs28 \
\fs24 \
Either
\f1 sendmail.subsidiary.cf
\f0 or
\f1 sendmail.sharedsubsidiary.cf
\f0 will be used when setting up a mail client; if you are not mounting
\f1 /usr/spool/mail
\f0 from mailhost, use the former, and use the latter if you do mount it. The file
\f1 sendmail.cf
\f0 should be a symbolic link to the appropriate file. Verify this either with
\f1 ls -l
\f0 or with the Workspace Manager's \
\qc Files
\f4 fi
\f0 More Info\
\ql menu item. If the link is incorrect, remove
\f1 sendmail.cf
\f0 and make an appropriate symbolic link, using either
\f1 ln -s
\f0 or the Workspace Manager (Control-drag; you'll see a double-headed arrow to indicate a symbolic link is being created). (See the
\i Network and System Administration
\i0 manual for more information on NFS mounting file systems and sendmail.)\
\
8. Reboot your system, or stop and restart the sendmail daemon:\
\f1 \
myhost# ps -ax |grep sendmail\
myhost# kill
\i pid
\i0
\f0 [
\i pid
\i0 obtained from the above command
\f1 ]\
myhost# /usr/lib/sendmail -bd -q1h\
\
\f0 9. If you are using the Internet Domain Name Service (BIND) at your site, you will need to create the file
\f1 /etc/resolv.conf
\f0 to access the facility (see the
\i Network and System Administration
\i0 manual for more information on BIND. )\
\
Mail should be delivered correctly at this point. Your mail, if addressed properly, will be sent to your machine via the machine
\b mailcarrier
\b0 . You should also be able to send mail from your NeXT computer. Try sending mail to an account you have on another machine. Check to see if you get it there. Log onto
\b mailcarrier
\b0 or another machine and send mail to your account on your NeXT computer and see if you get it. \
\b\i \
\
DEBUGGING NOTE
\b0 : If this doesn't work, do the following:\
\
\i0 • Verify the binding of “mailhost.” From a shell:\
\
\f1 myhost%
\b /usr/etc/ping mailhost 10 2
\b0 \
PING mailcarrier: 10 data bytes\
18 bytes from 129.18.2.74: icmp_seq=0. time=11. ms\
18 bytes from 129.18.2.74: icmp_seq=1. time=10. ms\
Check the name of the machine actually contacted. If it is not
\b mailcarrier
\b0 , you have the name
\b mailhost
\b0 as a value of the name property for another machine (the machine named in the ping output) in the NetInfo domain's /machines directory. Using NetInfoManager delete the value
\b mailhost
\b0 from this machine's name property, since it is not the
\b mailhost
\b0 for the network. \
• Repeat the ping test until you contact
\b mailcarrier.
\b0 \
\
• Verify that the
\f1 sendmail.cf
\f0 symbolic link is referencing the correct sendmail configuration file in
\f1 /etc/sendmail
\f0 . This was done in step 7 above.\
\
• Use sendmail's address testing option to examine the parsing steps used by sendmail:\
\
\f1 /usr/lib/sendmail -bt
\f0 \
\
See the sendmail(8) man page for more information.\
\
• If you are still having problems you may need to modify the
\f1 sendmail.cf
\f0 file to your site's specification. Consult with another network administrator at your site — one charged with your site's sendmail support — for more information. Also refer to the Sendmail documentation in Appendix C of the on-line 1.0 System Administration manual (accessible in the NeXT Manuals via the Digital Librarian).\